#ifndef JOUEURIA_H
#define JOUEURIA_H

#include <QProcess>
// DEBUG
#include <iostream>
using namespace std;

#include "joueur.h"

class JoueurIA : public Joueur {
    Q_OBJECT

    private:
        QProcess processus;

    public:
        JoueurIA(MoteurJeu * parent, string nom, Couleur couleur, int score) : Joueur(parent, nom, couleur, score) {
            cout << "JoueurIA cree !" << endl;
            //processus.start("IA/Fruit-2-3-1-Linux", QStringList());
            //processus.start("IA/Fruit-2-3-1-Mac", QStringList());
            processus.start("IA/Fruit-2-3-1-Win.exe", QStringList());
            QObject::connect(&processus,SIGNAL(readyReadStandardOutput()),this,SLOT(output()));
            QObject::connect(&processus,SIGNAL(finished(int,QProcess::ExitStatus)),this,SLOT(finished(int,QProcess::ExitStatus)));
        }
        ~JoueurIA() {}

        virtual void debutTour();
        virtual void debutTour(int last_x_debut, int last_y_debut, int last_x_fin, int last_y_fin, Coup last_coup, Type last_promo);
        virtual void finTour();
        virtual void choixPromotion();

    private slots:
        void output();
        void finished(int,QProcess::ExitStatus);
};

#endif
